求编程问题答案~要求过程```

来源:百度知道 编辑:UC知道 时间:2024/05/04 19:10:33
小卡卡来到了农场主John的家里,向他探询关于Pascal圣地宝藏的事。
John答应小卡卡愿意把他所知道的一切告诉小卡卡,但是John有一个要求,那就是希望小卡卡帮助他找出他走丢的一头奶牛。
John的奶牛都是由1-2^k编号的,但是John在放牛的时候无意中弄丢了一头奶牛。
他希望小卡卡告诉他,他走丢的奶牛的编号是多少。
Input
一行一个整数k表示奶牛的数目为2^k(1<=k<=20)。
第二行到第2^k行每行一个整数表示还在农场的一头奶牛的编号(并不是按顺序给出的)。
Output
输出走丢的奶牛的编号

程序名:loose.pas
输入文件:loose.in
输出文件:loose.out

样例输入: (loose.in)
2
4
1
3
样例输出: (loose.out)
2

对于一个自然数n(1<=n<=10^9),求各个数位上的数字之和。
Input
一行,即n
Output
一行,所求的和
程序名:szh.pas
输入文件:szh.in
输出文件:szh.out

样例输入:(szh.in)
213
样例输出:(szh.out)
6
1题````只要做出1题啊~~`

1.
var i,n,temp:longint;
num:int64;
a:array[1..2000000] of boolean;
begin
assign(input,'loose.in');reset(input);
assign(output,'loose.out');rewrite(output);

readln(n);
num:=1;
fillchar(a,sizeof(a),false);
for i:=1 to n do num:=num*2;

for i:=1 to num-1 do
begin
read(temp);
a[temp]:=true;
end;

for i:=1 to num-1 do
if not a[i] then
begin
writeln(i);
break;
end;

close(input);close(output);
end.

2.
var s:string;
sum,i,n,p:integer;
begin
assign(input,'szh.in');
assign(output,'szh.out');
readln(s);
num:=0;
for i:=1 to length(s) do
begin
val(s[i],n,p);
sum:=sum+n;
end;
writeln(sum);

close(input);close(output);
end.

第一题什么意思都没有看懂,我做了第二题。

program gwzh;
var